Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update email_validator to 2.2.0 #535

Open
wants to merge 2 commits into
base: main
Choose a base branch
from

Conversation

pyup-bot
Copy link
Collaborator

This PR updates email_validator from 2.0.0.post2 to 2.2.0.

Changelog

2.2.0

---------------------

* Email addresses with internationalized local parts could, with rare Unicode characters, be returned as valid but actually be invalid in their normalized form (returned in the `normalized` field). Local parts now re-validated after Unicode NFC normalization to ensure that invalid characters cannot be injected into the normalized address and that characters with length-increasing NFC normalizations cannot cause a local part to exceed the maximum length after normalization.
* The length check for email addresses with internationalized local parts is now also applied to the original address string prior to Unicode NFC normalization, which may be longer and could exceed the maximum email address length, to protect callers who do not use the returned normalized address.
* Improved error message for IDNA domains that are too long or have invalid characters after Unicode normalization.
* A new option to parse `My Name <addressdomain>` strings, i.e. a display name plus an email address in angle brackets, is now available. It is off by default.
* Improvements to Python typing.
* Some additional tests added.

2.1.2

---------------------

* The domain name length limit is corrected from 255 to 253 IDNA ASCII characters. I misread the RFCs.
* When a domain name has no MX record but does have an A or AAAA record, if none of the IP addresses in the response are globally reachable (i.e. not Private-Use, Loopback, etc.), the response is treated as if there was no A/AAAA response and the email address will fail the deliverability check.
* When a domain name has no MX record but does have an A or AAAA record, the mx field in the object returned by validate_email incorrectly held the IP addresses rather than the domain itself.
* Fixes in tests.

2.1.1

-------------------------

* Fixed typo 'marking' instead of 'marketing' in case-insensitive mailbox name list.
* When DNS-based deliverability checks fail, in some cases exceptions are now thrown with `raise ... from` for better nested exception tracking.
* Fixed tests to work when no local resolver can be configured.
* This project is now licensed under the Unlicense (instead of CC0).
* Minor improvements to tests.
* Minor improvements to code style.

2.1.0

------------------------

* Python 3.8+ is now required (support for Python 3.7 was dropped).
* The old `email` field on the returned `ValidatedEmail` object, which in the previous version was superseded by `normalized`, will now raise a deprecation warning if used. See https://stackoverflow.com/q/879173 for strategies to suppress the DeprecationWarning.
* A `__version__` module attribute is added.
* The email address argument to validate_email is now marked as positional-only to better reflect the documented usage using the new Python 3.8 feature.
Links

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant